<template><div><h2 id="说下对jvm内存模型的理解" tabindex="-1"><a class="header-anchor" href="#说下对jvm内存模型的理解"><span>说下对JVM内存模型的理解</span></a></h2>
<h2 id="jvm内存为什么要分代" tabindex="-1"><a class="header-anchor" href="#jvm内存为什么要分代"><span>JVM内存为什么要分代</span></a></h2>
<h2 id="对象一定分配在堆中吗" tabindex="-1"><a class="header-anchor" href="#对象一定分配在堆中吗"><span>对象一定分配在堆中吗</span></a></h2>
<h2 id="内存泄漏和内存溢出的区别" tabindex="-1"><a class="header-anchor" href="#内存泄漏和内存溢出的区别"><span>内存泄漏和内存溢出的区别</span></a></h2>
<h2 id="oom一定会导致jvm退出吗" tabindex="-1"><a class="header-anchor" href="#oom一定会导致jvm退出吗"><span>OOM一定会导致JVM退出吗</span></a></h2>
<h2 id="什么是堆外内存" tabindex="-1"><a class="header-anchor" href="#什么是堆外内存"><span>什么是堆外内存</span></a></h2>
<h2 id="对象的结构是什么样的" tabindex="-1"><a class="header-anchor" href="#对象的结构是什么样的"><span>对象的结构是什么样的</span></a></h2>
<h2 id="jvm对象分配内存如何保证线程安全" tabindex="-1"><a class="header-anchor" href="#jvm对象分配内存如何保证线程安全"><span>JVM对象分配内存如何保证线程安全</span></a></h2>
<h2 id="堆一定是线程共享的吗" tabindex="-1"><a class="header-anchor" href="#堆一定是线程共享的吗"><span>堆一定是线程共享的吗</span></a></h2>
<h2 id="class常量池和运行时常量池的区别" tabindex="-1"><a class="header-anchor" href="#class常量池和运行时常量池的区别"><span>Class常量池和运行时常量池的区别</span></a></h2>
<h2 id="运行时常量池和字符串常量池的区别" tabindex="-1"><a class="header-anchor" href="#运行时常量池和字符串常量池的区别"><span>运行时常量池和字符串常量池的区别</span></a></h2>
<h2 id="字符串常量池是如何实现的" tabindex="-1"><a class="header-anchor" href="#字符串常量池是如何实现的"><span>字符串常量池是如何实现的</span></a></h2>
<h2 id="gc是任意时候都能进行的吗" tabindex="-1"><a class="header-anchor" href="#gc是任意时候都能进行的吗"><span>GC是任意时候都能进行的吗</span></a></h2>
<h2 id="什么情况会导致jvm退出" tabindex="-1"><a class="header-anchor" href="#什么情况会导致jvm退出"><span>什么情况会导致JVM退出</span></a></h2>
<h2 id="java进程占用的内存有哪些部分" tabindex="-1"><a class="header-anchor" href="#java进程占用的内存有哪些部分"><span>Java进程占用的内存有哪些部分</span></a></h2>
<h2 id="什么是三色标记" tabindex="-1"><a class="header-anchor" href="#什么是三色标记"><span>什么是三色标记</span></a></h2>
<h2 id="说说对象分配规则" tabindex="-1"><a class="header-anchor" href="#说说对象分配规则"><span>说说对象分配规则</span></a></h2>
<h2 id="对象的大小如何计算" tabindex="-1"><a class="header-anchor" href="#对象的大小如何计算"><span>对象的大小如何计算</span></a></h2>
<h2 id="常用的jvm启动参数有哪些" tabindex="-1"><a class="header-anchor" href="#常用的jvm启动参数有哪些"><span>常用的JVM启动参数有哪些</span></a></h2>
<h2 id="设置堆内存xmx应该考虑哪些因素" tabindex="-1"><a class="header-anchor" href="#设置堆内存xmx应该考虑哪些因素"><span>设置堆内存XMX应该考虑哪些因素</span></a></h2>
<h2 id="cpu百分百问题如何排查" tabindex="-1"><a class="header-anchor" href="#cpu百分百问题如何排查"><span>CPU百分百问题如何排查</span></a></h2>
<h2 id="强引用、软引用、弱引用、虚引用的区别" tabindex="-1"><a class="header-anchor" href="#强引用、软引用、弱引用、虚引用的区别"><span>强引用、软引用、弱引用、虚引用的区别</span></a></h2>
<h2 id="说说类加载器机制与双亲委派机制" tabindex="-1"><a class="header-anchor" href="#说说类加载器机制与双亲委派机制"><span>说说类加载器机制与双亲委派机制</span></a></h2>
<h2 id="项目中如何选择垃圾回收器" tabindex="-1"><a class="header-anchor" href="#项目中如何选择垃圾回收器"><span>项目中如何选择垃圾回收器</span></a></h2>
<h2 id="可以打破双亲委派机制吗" tabindex="-1"><a class="header-anchor" href="#可以打破双亲委派机制吗"><span>可以打破双亲委派机制吗</span></a></h2>
<h2 id="说下jvm中一次完成的gc流程" tabindex="-1"><a class="header-anchor" href="#说下jvm中一次完成的gc流程"><span>说下JVM中一次完成的GC流程</span></a></h2>
<h2 id="什么是指针碰撞" tabindex="-1"><a class="header-anchor" href="#什么是指针碰撞"><span>什么是指针碰撞</span></a></h2>
<h2 id="jvm为什么使用元空间替换了永久代" tabindex="-1"><a class="header-anchor" href="#jvm为什么使用元空间替换了永久代"><span>JVM为什么使用元空间替换了永久代</span></a></h2>
</div></template>


